package top.ajax;

import com.alibaba.fastjson.JSON;
import top.pojo.User;

/**
 *  Json    即：JavaScript 对象表示法.
 *
 *  作用：由于其语法格式简单，层次结构鲜明，现多用于作为数据载体，在网络中进行数据传输
 *
 *  JSON的数据类型为：
 *      数字（整数或浮点数）
 *      字符串（使用双引号括起来）
 *      逻辑值（true或者false）
 *      数组（在方括号中）
 *      对象（在花括号中）
 *      null
 *
 *   ---------------------- JSON串和Java对象的相互转换----------------------------
 *
 *   请求数据：JSON字符串转为Java对象
 *   响应数据：Java对象转为JSON字符串
 *
 *   步骤：
 *      导入坐标
 *          <dependency>
 *              <groupId>com.alibaba</groupId>
 *              <artifactId>fastjson</artifactId>
 *              <version>1.2.62</version>
 *          </dependency>
 *
 *      Java对象转JSON
 *          String jsonStr = JSON.toJSONString(obj)
 *
 *      JSON字符串转Java对象
 *          User user = JSON.parseObject(jsonStr, User.class)
 */
public class Json1 {

    public static void main(String[] args) {

        //Java对象转JSON
        User user = new User();
        user.setId(1);
        user.setUsername("张三");
        user.setPassword("123");

        String s = JSON.toJSONString(user);
        System.out.println(s);

        //JSON字符串转Java对象
        User user1 = JSON.parseObject(s, User.class);
        System.out.println(user1);
    }
}
